# -*- coding: latin-1 -*-
from django.shortcuts import render_to_response
from tjango.modules.models import system
from tjango.listreport.listados import *
from datetime import *
from django import forms
from django.db.models import Q
from models import *
from tjango.formreport.views import * 

def prestamo__imprimir(request,rest_of_url):
	prestamo = Prestamo.objects.get(id=rest_of_url)
	fecha = re.match(r'(?P<year>\d+)-(?P<month>\d+)-(?P<day>\d+)',str(prestamo.fecha))
	year = fecha.group('year')
	month = fecha.group('month')
	day = fecha.group('day')
	printer = Print()
        return render_to_response("prestamos.html", locals())


class Estado_de_prestamos(Report):
	
	class ReportForm(forms.Form):
		nombre = forms.CharField(max_length=20,required=False)
		fecha_prestamo_inicio = forms.DateField(required=False)
		fecha_prestamo_fin = forms.DateField(required=False)
		titulo = forms.CharField(max_length=100,required=False)
		autor = forms.CharField(max_length=20,required=False)
		isbn = forms.CharField(max_length=20,required=False)
		fecha_devolucion_inicio = forms.DateField(required=False)
		fecha_devolucion_fin = forms.DateField(required=False)						
		
	def select(self):
		return 	F('', filter={'nombre__icontains': 'nombre'}, items= [
			F('nombre',verbose='Nombre'),
			F('prestamos', filter={'fecha__gte': 'fecha_prestamo_inicio','fecha__lte': 'fecha_prestamo_fin'},items = [
				F('"Prestamos"', verbose='Nombre'),
				F('fecha',verbose='Fecha'),
				F('cantidad',verbose='Cantidad',total=True),
				F('libros',filter={'fecha_entrega__gte': 'fecha_devolucion_inicio','fecha_entrega__lte': 'fecha_devolucion_fin','titulo__contains':'titulo','autor__contains':'autor','isbn':'isbn'}, items = [
					F('"Libro"', verbose='Nombre'),
					F('libro', verbose='Titulo'),
					F('autor', verbose='Autor'),
					F('isbn',verbose="isbn"),
					F('fecha_entrega',verbose='Fecha Entrega'),
				]),
			]),
		])
	
	def query(self, form):
		return 	Cliente.objects.all()
